< previous page page_240 next page >

Page 240
An Overview of the Graphical User Interface Subsystem
In general, designing graphical user interfaces is more a function of ergonomics and human factors research than object-oriented programming. The most important goal of designing any user interface is to provide a simple metaphor for helping the users articulate their work needs. Like any well-structured software, graphical user interfaces require constant improvements in user-friendliness and accessibility throughout the life of the project.
Understanding the Fundamental Concepts Underlying the Subsystem
As with object-oriented development, developing user interfaces requires analysis or assessment of the human interaction with the application, as depicted in the use cases, as well as design and implementation. It is a mistake to assume that user interfaces can be mocked up quickly. Developing user interfaces involves using the most effective controls, placing the controls on the form in a manner that optimizes user productivity, and planning for human factors such as eye strain, carpal tunnel syndrome, and other hazards associated with long-term use of computer applications.
Besides having a user interface that is truly user-friendly, you should also include some mechanism for handling the flow of information into and out of a form. Creating such a mechanism or subsystem can be complex at times, but it helps to decouple the form from the actual business class. Such decoupling maximizes the chance of your classes and forms being reused by promoting independence among these objects.
Mapping Use-Case Actor Stimuli to GUI Navigation
As mentioned earlier, developing a good graphical user interface requires that you at least review your use cases. Use cases show the interaction between human actors and the application under development. Recall that each use case contains one to many scenarios, each of which contain one to many steps. A step could be described as clicking a mouse or pressing the Enter key. In other words, your use-case scenarios are the artifacts that provide the foundation for building your graphical user interfaces. Constant user feedback helps keep your foundation accurate.

 
< previous page page_240 next page >

If you like this book, buy it!